Loading...
 

CX_PHONE_CALL - A call

CX_PHONE_CALL - A call

Class hierarchy
Description:

An object of type CX_PHONE_CALL maps a call. A call can be in a certain state. The following states are passed through when a call is made:

Comments: After t1, the machine switches to either s2, s4, s5 or s6. From s2 via t2 the status of the call switches directly to s3, i.e. if an error occurs during dialling, the messages PC_ERROR and immediately afterwards PC_INVALID are generated. s5 only occurs if the hardware detects the ringing on the other side. If not and a connection is established, the system changes directly from t1 to s6.

An error may also occur with Call(HangUp), Call(Hold) and Call(Unhold) (not entered in the image). The status after an error can be PC_INVALID, but can also be the status before the function call. Only in case of an error in MakeCall, ClassiX® guarantees the path s2 -> t2 -> s3.

The PC_INVALID status is always the last status that a call can accept. At the same time, the object is under the management of the garbage collection from this point on and is destroyed as soon as there is no more reference to it.

The following figure shows the call acceptance procedure:

Comments: After s2 the system may jump to s6, i.e. after a PC_OFFERING a PC_CALLERID may follow. There may be a time span between these messages, so they may not be triggered immediately after each other.

The initiation of calls and answering of calls is controlled via the Phone Manager. This creates a new CX_PHONE_CALL object, with which the call can now be further controlled, e.g. by disconnecting the connection or accepting or rejecting an offered call. It is not necessary to create a CX_PHONE_CALL object directly (it would not be able to perform any actions anyway because of the missing connection to Windows; this connection is also created by the Phone Manager).

A message is always generated for status changes. For this message, the relevant CX_PHONE_CALL object is at the top of the stack.

As soon as a CX_PHONE_CALL object has the status PC_INVALID, no further actions can be performed with this object (exception: Get functions). The attempt is acknowledged with a PC_ERROR or an error message. The object can change to the status PC_INVALID at any time, i.e. whenever the other party terminates the connection.

Code example:
...

List of methods (MDI)
Function MA* Parameters Return Brief description
Answer Answering a call
GetCallStatus INTEGER Determining the status of the call
GetCalledID OBJECT Determining the number of the called party
GetCallerID OBJECT Determining the caller's telephone number
HangUp Terminate connection
Hold Hold connection
Reject Reject call
Unhold Undo hold

* MA = Member Access function,
grey background = inherited function

Use in AppsWH
Module Brief description